Systems and methods for monitoring the movement of gas

ABSTRACT

A system to characterize gas in a building includes a processor; a gas sensor coupled to the processor; a gas valve coupled to the processor; an encryption module executed by the processor to secure gas data; and a transceiver to communicate secured gas data over a network to a remote processor.

BACKGROUND

The present disclosure relates to a gas supply and delivery system thatwill cryptographically secure gas such as hydrogen, nitrogen, carbondioxide, carbon monoxide, fluorine, argon, oxygen, methane, helium,propane, natural gas control and usage analysis.

Monitoring the movement of gas and doing it with security and accuracyhas been one of the most important issues in human history. A modern gassupply system is global and consists from the ground or plants totankers or pipe lines and travels for 1000's of miles across the countrythen collects, treats, stores, and distributes gas between wholesalers,retailers and customers around the world. The goal is to deliver gas tobusinesses and consumers with appropriate quality and quantity.Typically, gas is supplied with measured amount point of gathering thenat the refinery's and again when it is reaching a distributor. Forconsumption, each step could now be metered on a cryptographicallysecure data system.

Gas can leak for various reasons, such as from mechanical pipe failuredue to age or defect. There are many ways that gas can create a problemat distributors, business and homes. A broken machine hose, a leakingdistributor pipe, or something else, the damages can be catastrophic,causing hazard conditions. Conventionally, gas leak sensors can beinstalled at the beginning and along a pipe line of any gas line todetect leaks. These devices are activated when gas starts to movetriggering the circuit to turn off the valve and sends an alarm to aswitch board, computer or phone. However, such alarm works only whenplaced in the protect mode. See FIG. 2.

Repairing the damages inflicted on a distributors, business and homescaused by gas-related issues can be expensive and agonizing fordistributors, business and homes owners and insurance companies. Manyinsurance companies recognize the commonality of gas damage as hazardelements are among the most common threats in terms of disturbing to,business and homes environment.

SUMMARY

In one aspect, a system to characterize gas in a building will include aprocessor, a gas sensor coupled to the processor, a gas valve coupled tothe processor, an encryption module executed by the processor to securegas data, and a transceiver to communicate secured gas data over anetwork to a remote processor.

Implementations of the above aspect may include one or more of thefollowing. A blockchain which can be accessed by the processor throughthe transceiver. Sensor data is stored in the blockchain to avoidtampering. Data transactions sent by the processor are signed withelliptic curve signature. An application program interface (API) toallow a mobile device to query the processor for gas data. The processorreceives commands from a phone app to the devices and communicatereadings from the devices to the phone app using the API. The processoruses the API to communicate an email or a text notification based on apredetermined event such as gas leakage detection. The communicationsbetween network devices and the blockchain enhanced security featuresthat protect the connections and the privacy of the users. The systemcan automatically turn off the gas valve in case of a leak. The systemcan open gas flow on a selected pipe on a scheduled time. The system candisaggregate gas usage at an appliance or fixture level. A learningmachine can disaggregate gas usage. The encryption does not allow usingthe same random key for a digital signature twice and wherein encryptionparameters for a digital signature (r,s) are different for the digitalsignature because a sender and a receiver track and reject re-using thesame (r).

In another aspect, a method to manage gas throughout the gasinfrastructure includes reading from one or more sensors; storing sensordata on a blockchain; determining if the gas flow is from a leakageabove a predetermined threshold and shutting off the gas.

The method can include notifying a user of the gas leakage prior toshutting off gas. The system can communicate with a mobile devicethrough an encrypted application program interface (API). The methodincludes securing communications with an elliptic curve signature. Whennot used, the processor can be used to mine for a cryptocurrency using alow power microcontroller. The system allows accessing secured sensordata on the blockchain and rendering the result on a mobile device.

According to another aspect, a gas detection system includes a gas usagedetector with one or more gas pressure sensors coupled to the gas flowand an electrically actuated shut-off valve. The system stores data onthe blockchain for security.

In another aspect, the system is a smart gas-shutoff valve with built-insensors that monitor gas usage and detect leaks. In certain embodiments,the system can measure gas flow, pressure, and temperature, and combinethat data with machine learning to detect even small drip leaks. If thesystem detects a leak, depending on the amount of gas leakage, it willautomatically shut off the gas to minimize distributors, business andhomes damage. For slow leaks, the system can leave the gas flowing, butgenerate an alarm for the user. This system is also able to regulate theflow for complete control by the user.

BRIEF DESCRIPTION OF THE DRAWINGS

For simplicity and clarity of illustration, the drawing figuresillustrate the general manner of construction, and descriptions anddetails of well-known features and techniques may be omitted to avoidunnecessarily obscuring the present disclosure. Additionally, elementsin the drawing figures are not necessarily drawn to scale. For example,the dimensions of some of the elements in the figures may be exaggeratedrelative to other elements to help improve understanding of embodimentsof the present disclosure. The same reference numerals in differentfigures denotes the same elements.

FIG. 1 shows an exemplary gas monitoring system

FIG. 2 shows a mobile app to monitor and control gas flow in case ofleakage.

FIG. 3 shows an exemplary process for FIGS. 1-2.

FIGS. 4A-4B show an exemplary daily-activity monitoring process tomonitor people safety.

FIG. 5 shows a network to control a plurality of gas users.

FIGS. 6A-6C show an exemplary blockchain network in the system of FIG.5.

DESCRIPTION OF EXAMPLES OF EMBODIMENTS

FIG. 1 shows an exemplary gas monitoring and control system 20. Thesystem is installed between two pipes 10 and 12, with pipe 12 coupled tothe main gas pipe from the gas utility. In a typical house or building,gas can be supplied to gas system from a gas-supply utility system thatdelivers gas through pipes at high pressure using a system ofhigh-pressure pumps. A pressure regulator can be installed at theinterface between the utility system and the gas system. Pressureregulator can convert the utility supplied pressure of the gas (e.g.,approximately 100-150 pounds per square inch (psi)) down to pressurelevels that are suitable for gas system in a distributors, business andhomes (e.g., approximately 20-80 psi), such as to ensure safety andlongevity of fixtures, pipes, and/or appliances in gas system. As usedherein, psi refers to pounds per square inch gauge (psig), which ismeasured relative to atmospheric pressure.

At the entrance, the system 20 has a manual valve 18 to allow useroverride. Gas from pipe 10 is detected by a flow meter 26 and thentraverses a full port valve 28, both of which are connected to aprocessor 22. The processor 22 communicates to the Internet ordistributors, business and homes intranet with a transceiver 24. Dataprocessed by the processor 22 can be stored on a blockchain 30, and userinput can be done through a mobile app on a mobile device 32, such as asmart phone or a tablet, for example.

An exemplary sensor can be employed in many different embodiments orexamples not specifically depicted or described herein. In severalembodiments, sensing device can include a controller and one or moresensors that can be used to gather data used for collecting data used inleak characterization. For example, as shown in FIG. 1, the sensors caninclude a pressure sensor and/or a flow meter. In several embodiments,sensing device can include an automatic shutoff valve, which can becontrolled by controller, such as by sending a wireless control signal.

The flow meter 26 can be a gas flow sensor configured to measure theconsumption of gas in a gas system. The valve 28 can be a gas actuatorvalve which is used to control the gas flow in the gas pipes by stoppingthe gas flow or allowing the gas flow. The processor can be part of asmart controller board based on IOT microcontrollers which is connectedto the gas flow sensor and the actuator valve at the same time. Themicrocontroller board calculates the gas flow readings from the gas flowsensor and increments the amount of gas used based on the signalsreceived from the gas flow sensor, and the microcontroller board sendsdirect commands to the actuator valve to stop the gas flow or allow thegas flow in the pipes.

In other embodiments, ultrasonic sensors can be used to detect sounds inthe gas flow and deep learning is applied to the sounds to learn leakagepattern. In other embodiments, a turbine mechanism provides accurateflow measurements of cold gas. The processor can store in memory aresettable batch total, flow rate and it also a lifetime total. Theprocessor can perform local calibration and adjustments to fine tune themeasurements.

After passing through gas sensor(s) and the gas valve, the gas continuesinto the rest of the house, for example through a gas heater and thenthrough various fixtures. The fixtures can include a kitchen faucet, adishwasher, and a refrigerator in a kitchen; faucets and toilets in afirst, a second, and a third bathroom, a shower in the second bathroom,a shower tub in the third bathroom, outdoor gas taps, and a washingmachine. The term “fixtures” can refer to appliances, faucets, or otherpieces of equipment that is attached to gas system, which can make useof the gas delivered by gas system. The fixtures can include a kitchenfaucet, a dishwasher, and a refrigerator in a kitchen; faucets andtoilets in a first, a second, and a third bathroom, a shower in thesecond bathroom, a shower tub in the third bathroom, outdoor gas taps,and a washing machine. The term “fixtures” can refer to appliances,heater, or other pieces of equipment that is attached to gas system,which can make use of the gas delivered by gas system.

The system 20 is installed using usual installation techniques to ensureleak-free deployment. In one embodiment, the system includes a sensingdevice with a gas flow sensor in the unit, along with a remotelycontrolled valve that can turn off gas in case of a large pipe leakage,for example.

In some embodiments, in which flow meter is included in sensing device,flow meter can include an in-line flow turbine sensor. A flow turbinesensor can include a rotor that is turned by a liquid force proportionalto flow of the liquid in a flow direction. For example, liquid flow ofthe gas causes a bladed turbine inside the flow meter to turn at anangular velocity directly proportional to the velocity of the liquidbeing monitored. As the blades pass beneath a magnetic pickup coil inthe flow meter, a pulse signal is generated. For example, a Hall Effectsensor can be included that supplies pulses used for digital or analogsignal processing. Each pulse can represent a discrete volume of liquid.A frequency of the pulse signal can be directly proportional to angularvelocity of the turbine and the flow rate. A large number of pulses canprovide high resolution. In other examples, flow meter can include anultrasonic flow meter that determines time of flight measurement, anacoustic (Doppler) flow meter, or any other flow meter that can monitorflow of a substance and acquire flow data representing the flow. In anumber of embodiments, the flow data measured by flow meter can be sentto controller using a flow data line.

The system 20 can transmit gas related data and sensor output to aremote processor via the wireless transceiver 24 which can be a Wi-Fi,Bluetooth, Zigbee, or suitable transceiver. The system 20 can receiveremote commands to turn on/off gas supply to the house in case of a leakinside the house. To protect against hacking, communications are storedon the blockchain. Major features include:

1. Data storage in a blockchain—The data stored by the gas flow monitordevice is saved into a blockchain network, not just a regular database,which guarantees protection over data history from modifications.

2. Elliptic curves digital signature—The data transactions sent from thegas flow monitoring devices 20 are signed by the devices using theelliptic curves digital signature algorithm, which guarantees thelegitimacy of the source devices sending the data to the blockchainnetwork.

3. API level—The devices also log the live readings to the API to sendcommands from the phone app to the devices and receive readings from thedevices to the phone app

4. Wi-Fi connections—The microcontrollers within the gas solutionmonitor devices can connect to the internet via Wi-Fi which makes iteasier to connect without the need for network cables

5. High security over enhanced connections—The communication between thedevices and the blockchain network or the API gateways is based onenhanced security features that protect the connections and the privacyof the users.

6. Notifications—The API level sends email or SMS notifications to theowners based on certain events, for example gas leakage detection.

7. Automated shutdown or open gas flow—Based on different featuresavailable to the owners through the app, users can choose to activate anautomated shutdown for gas or open gas flow within the pipes based onscheduled times or gas leakage detections. In one embodiment, the gasleakage is determined from the average setting on the server arecompared to the gas flow readings that are received from the device. Thedata comparison is carried by the API server and is managed by the codecontrolling the communications between the client side and the deviceside. The continuity of the Cron job is done by the connections from themicrocontrollers in the devices presented in FIG. 1 because the devicesconnect to the server every 5 seconds, therefore the initiations of theCron jobs are based on the microcontrollers calling the API scriptsthrough the connections to the server, and during those connections thecommunications are carried to deliver readings or receive on and offcommands.

In one embodiment, the device or unit 20 communicates with a mobile appshown in FIG. 2 and informs the user of unusual gas flow, and acceptsgas shutoff commands from the user. The smartphone provides centralcommand. With the app, the user can get alerts and turn gas on or offfrom anywhere in the world. The user can view the distributors, businessand home's gas consumption, or even contact a plumber to have them comefix a problem. Further, if the user is not monitoring gas consumption,the system is smart enough to automatically shut the gas off for theuser if something catastrophic occurs. The app has a graphical interfacesuch as those in FIG. 2, but the graphical interface can include a webinterface as well as a mobile device interface. The graphical interfaceprovides notification and interaction functions for a user of the userdevice. For example, the graphical interface can communicate or presentleak information for the user, and can allow the user to provide inputto enable and disable various fixtures in the pressurized system, or toenable or disable various settings (e.g., types of notifications such asreporting alerts, frequency of notifications, types of leaks to report,or any other suitable setting).

The communication between the app on the mobile device and the recipientunit 20 is protected by a high level of cryptography which involvessymmetric and asymmetric encryptions, it also involves enhancedalgorithms that prevent intruders and hackers from being able toduplicate a radio signal that was sent from the legitimate gas sensorand try to send it as it was (duplicate) in an attempt to mess with therecipient unit.

The term cryptographic means applying a digital signature based onElliptic Curve Digital Signature Algorithm (ECDSA), for example or anRSA. ECDSA is a variant of the Digital Signature Algorithm (DSA). Takingan example of the ECDSA based on elliptic curves digital signature andDiffie Hellman key exchange, the commands sent from the gas sensor tothe recipient unit will carry a digital signature, in addition to this,an additional enhancement is applied to prevent a hacker from copying acommand including a correct digital signature and trying to repeat itand tamper with the recipient unit, this new level is based on analgorithm which does not allow using the same random key for a digitalsignature twice, therefore the parameters for the digital signature(r,s) will always be different for the digital signature because thesender (mobile app) and the receiver (gas sensor unit) will keep trackof which (r) has been used before and will not permit re-using the same(r).

If the gas sensor will send a command every second, it means it willsend 31,536,000 commands per year, and it uses the secp192r1 curve,which is one of the smallest elliptic curves, which means there is199,045,590,290,039,344,363,133,860,451,790,538,308,674,386,239,980years left to run a command with a new signature every second.

FIG. 3 shows an exemplary flowchart for capturing gas usage data,detecting excessive or unusual uninterrupted gas consumption, and eitherwarning the user or automatically turning off the gas main entering thehouse to avoid gas damage. When the CPU is not used, the system appliesprocessor power to mine for cryptocurrency where users are rewarded.

The system can also perform gas usage disaggregation to advise users ofdetailed gas usage and cost. In one embodiment, disaggregation of gasconsumption events is done based on the detailed gas consumption data.The system can determine short events (quick washing, gas refill),intermediate recurring events (toilet flushing—type 1 and type 2),regular long events from appliances (washers), and irregular long events(showers). Users are provided detailed information on their gasconsumption (e.g., by showing the cost that occurred due to showers orthe usage of washing machines). These patterns are differentiated by theflow rate and gas sound, and the data is provided to a deep learningmachine for recognition.

FIG. 4A-4B shows an exemplary learning system that is used todisaggregate gas consumption in a building. The system initiallycaptures gas pressure data from actuations of furnaces, hot waterheaters, etc. From the gas pressure signatures, the system can inferdaily activity. For example, the shape and size of the gaspressure/sound waveform may be used to help identify the load. Thesystem can analyze features such as harmonics, sub-harmonics,starting-transient peak; starting-transient duration, starting-transienttime-constant, or starting-transient shape. Signal processing techniquescan be used to analyze the total household gas use data, into particulardaily activities based on the unique properties of each load. A libraryof properties of common loads can be maintained and accessed by the userinterface, user computer, or remote system. For example, the library caninclude properties of appliances from model years that are most likelyto be used in the monitored environment. When located on the userinterface or user computer, this library can be updated periodically,such as through the internet by the remote server. Other programming ofthe user interface, or software running on the user computer, can alsobe updated via the internet, such as with improved algorithms,heuristics, and the like. In certain implementations, training or otheruser provided data is used to update a library that can be shared withother users. With a broad set of load profiles, the systems will be ableto, in particular examples automatically identify the loads consumingthe majority of the utilities in the monitored area. The system can showthe data along with proposed labels for the user to review andrevise/accept. Then the system trains the deep learning system toclassify different gas usage events. The deep learning can be neuralnetworks such as Tensorflow, among others. In other implementations, thesystems use a processing algorithm that employs statistical analysis,such as a least squares fit, to identify individual loads.

From the gas pressure signatures, the system can infer daily activity.FIG. 4A shows an exemplary process to non-invasively infer daily lifeactivities using a combination of motion sensor and gas flow sensing.The motion sensor communicates motion data to a gateway which forwardsthe data for activity of life analysis to a processor, and based onpatterns that indicate the user may need help, the system can have acall center operator to call and inquire before requesting 911assistance, or family assistance, depending on user preference.

Although the detection needs not be done in any particular order, anexemplary sequence is discussed. In one implementation, the processdetects wake-up time in the daily activity patterns in 201. For example,the wake-up time may be detected by detecting existence of a person on abed by detecting faucet/toilet gas activities in the restroom in themorning. A furnace “time detection” 203 detects furnace-using time inthe daily activity patterns by detecting that the appropriate toilet gasconsumption rate. A “water heater time detection” 205 detects bathingtime in the daily activity patterns by detecting a high volume of gasconsumption rate and that the electric lamp in the bathroom is turnedon. A cooking time detection 206 detects cooking time in the dailyactivity patterns and is comprised of detecting gas flow in the kitchenarea.

A room-to-room movement frequency detection 207 detects the number ofmovements between rooms in the daily activity patterns and is comprisedof one or more sensors or one or more distributors, business and homeselectric appliances for detecting the number of movements between therooms. For example, the number of movement between the rooms may bedetected by detecting that the electric lamps in each room are turnedon/off or detecting that other distributors, business and homes electricappliances in each room are turned on/off.

Data of the daily activity patterns is detected by physical/virtualdetection sensors using gas flow and transmitted to the data processingapparatus in a wireless or wired manner and, then, the transmitted datais stored in databases of the data processing apparatus. Every time thedata processing apparatus receives the data of the daily activitypatterns from the detection sensors, it performs the statisticalanalyses of the stored data so as to determine whether the receiveddaily activity pattern is abnormal or not. If it is determined that thereceived daily activity pattern is abnormal, the reporting apparatus inthe distributors, business and homes of the person to be observed or thereporting apparatuses are informed of the abnormality. In response tothe abnormality notification, the person to be observed or the observerschecks whether the abnormality notification is correct or not and givesthe data processing apparatus feedback about whether the abnormalitynotification is correct or not. Based on the feedback information, thedata processing apparatus determines whether the daily activity patternsthat have been considered abnormal correspond to the actualabnormalities or not and learns the daily activity patterns unique tothe person to be observed. Here, although examples of the sensors fordetecting the daily activity patterns include only the wake-up timedetection, the bedtime detection, the toilet time detection, the roomcleaning time detection, the bathing time detection , the cooking timedetection and the room-to-room movement frequency detection as describedabove, other sensors for detecting the daily activity patterns may beprovided.

For example, if the user typically sleeps between 10 pm to 6 am, thelocation would reflect that the user's location maps to the bedroombetween 10 pm and 6 am. In one exemplary system with the instant gasdisaggregation (virtual sensor) an optional heart rate monitor or amotion sensor in the room (physical sensor), the system builds aschedule of the user's activity as follows:

Location Time Start Time End Heart Rate Bed room   10 pm   6 am 60-80 Gym room   6 am   7 am 90-120 Bath room   7 am 7:30 am 85-120 Diningroom 7:30 am 8:45 am 80-90  Distributors, business 8:45 am 11:30 am 85-100 and homes Office . . .

FIG. 4B shows an exemplary process to monitor a patient. First, theprocess acquires gas flow data (304). Next, the process identifiesindividual fixture or appliance gas consumption from the gas flow data(306). The process then determines daily life activity patterns from theindividual appliance utility consumption; and sending a request forassistance when the pattern matches one or more predetermined conditions(310).

The predetermined conditions can be dangerous conditions such as whengas is on or off for unusual period. In embodiments with physicalsensors to supplement the virtual sensor (gas use disaggregationsystem), the dangerous condition can include being in one position (suchas bed or chair) for too long; having an oven on for an extended period,having the TV on without turning on lights in the bed room past a normalsleep time, or may be as simple as the cellphone being turned off fortoo long. The predetermined conditions can be programmed by a systeminstaller, and may not relate to dangerous conditions, but simplyconditions where someone such as a family member or a caretaker shouldfollow up to ensure patient safety.

In one embodiment, the phone can simply request that the user shuts offan alarm countdown or acknowledge that the patient is doing ok toprevent false alarms. The daily life activity tracking is adaptive inthat it gradually adjusts to the user's new activities and/or habits. Ifthere are sudden changes, the system flags these sudden changes forfollow up. For instance, if the user spends three hours in the bathroom,the system prompts the third party (such as a call center) to follow upwith the patient to make sure he or she does not need help.

In one embodiment, data driven analyzers may be used to track thepatient's habits. These data driven analyzers may incorporate a numberof models such as parametric statistical models, non-parametricstatistical models, clustering models, nearest neighbor models,regression methods, and engineered (artificial) neural networks. Priorto operation, data driven analyzers or models of the patient's habits orambulation patterns are built using one or more training sessions. Thedata used to build the analyzer or model in these sessions are typicallyreferred to as training data. As data driven analyzers are developed byexamining only training examples, the selection of the training data cansignificantly affect the accuracy and the learning speed of the datadriven analyzer. One approach used heretofore generates a separate dataset referred to as a test set for training purposes. The test set isused to avoid overfitting the model or analyzer to the training data.Overfitting refers to the situation where the analyzer has memorized thetraining data so well that it fails to fit or categorize unseen data.Typically, during the construction of the analyzer or model, theanalyzer's performance is tested against the test set. The selection ofthe analyzer or model parameters is performed iteratively until theperformance of the analyzer in classifying the test set reaches anoptimal point. At this point, the training process is completed. Analternative to using an independent training and test set is to use amethodology called cross-validation. Cross-validation can be used todetermine parameter values for a parametric analyzer or model for anon-parametric analyzer. In cross-validation, a single training data setis selected. Next, a number of different analyzers or models are builtby presenting different parts of the training data as test sets to theanalyzers in an iterative process. The parameter or model structure isthen determined on the basis of the combined performance of all modelsor analyzers. Under the cross-validation approach, the analyzer or modelis typically retrained with data using the determined optimal modelstructure.

In general, multiple dimensions of a user's daily activities such asstart and stop times of interactions of different interactions areencoded as distinct dimensions in a database. A predictive model,including time series models such as those employing autoregressionanalysis and other standard time series methods, dynamic Bayesiannetworks and Continuous Time Bayesian Networks, or temporalBayesian-network representation and reasoning methodology, is built, andthen the model, in conjunction with a specific query makes targetinferences.

Bayesian networks provide not only a graphical, easily interpretablealternative language for expressing background knowledge, but they alsoprovide an inference mechanism; that is, the probability of arbitraryevents can be calculated from the model. Intuitively, given a Bayesiannetwork, the task of mining interesting unexpected patterns can berephrased as discovering item sets in the data which are much more—ormuch less—frequent than the background knowledge suggests. These casesare provided to a learning and inference subsystem, which constructs aBayesian network that is tailored for a target prediction. The Bayesiannetwork is used to build a cumulative distribution over events ofinterest.

In another embodiment, a genetic algorithm (GA) search technique can beused to find approximate solutions to identifying the user's habits.Genetic algorithms are a particular class of evolutionary algorithmsthat use techniques inspired by evolutionary biology such asinheritance, mutation, natural selection, and recombination (orcrossover). Genetic algorithms are typically implemented as a computersimulation in which a population of abstract representations (calledchromosomes) of candidate solutions (called individuals) to anoptimization problem evolves toward better solutions. Traditionally,solutions are represented in binary as strings of 0 s and 1 s, butdifferent encodings are also possible. The evolution starts from apopulation of completely random individuals and happens in generations.In each generation, the fitness of the whole population is evaluated,multiple individuals are stochastically selected from the currentpopulation (based on their fitness), modified (mutated or recombined) toform a new population, which becomes current in the next iteration ofthe algorithm.

Substantially any type of learning system or process may be employed todetermine the user's ambulatory and living patterns so that unusualevents can be flagged.

In one embodiment, clustering operations are performed to detectpatterns in the data. In another embodiment, a neural network is used torecognize each pattern as the neural network is quite robust atrecognizing user habits or patterns. Once the treatment features havebeen characterized, the neural network then compares the input userinformation with stored templates of treatment vocabulary known by theneural network recognizer, among others. The recognition models caninclude a Hidden Markov Model (HMM), a dynamic programming model, aneural network, a fuzzy logic, or a template matcher, among others.These models may be used singly or in combination.

Dynamic programming considers all possible points within the permitteddomain for each value of i. Because the best path from the current pointto the next point is independent of what happens beyond that point.Thus, the total cost of [i(k), j(k)] is the cost of the point itselfplus the cost of the minimum path to it. Preferably, the values of thepredecessors can be kept in an M×N array, and the accumulated cost keptin a 2×N array to contain the accumulated costs of the immediatelypreceding column and the current column. However, this method requiressignificant computing resources. For the recognizer to find the optimaltime alignment between a sequence of frames and a sequence of nodemodels, it must compare most frames against a plurality of node models.One method of reducing the amount of computation required for dynamicprogramming is to use pruning. Pruning terminates the dynamicprogramming of a given portion of user habit information against a giventreatment model if the partial probability score for that comparisondrops below a given threshold. This greatly reduces computation.

Considered to be a generalization of dynamic programming, a hiddenMarkov model is used in the preferred embodiment to evaluate theprobability of occurrence of a sequence of observations O(1), O(2), . .. O(t), . . . , O(T), where each observation O(t) may be either adiscrete symbol under the VQ approach or a continuous vector. Thesequence of observations may be modeled as a probabilistic function ofan underlying Markov chain having state transitions that are notdirectly observable. In one embodiment, the Markov network is used tomodel a number of user habits and activities. The transitions betweenstates are represented by a transition matrix A=[a(i,j)]. Each a(i,j)term of the transition matrix is the probability of making a transitionto state j given that the model is in state i. The output symbolprobability of the model is represented by a set of functions B=[b(j)O(t)], where the b(j) O(t) term of the output symbol matrix is theprobability of outputting observation O(t), given that the model is instate j. The first state is always constrained to be the initial statefor the first time frame of the utterance, as only a prescribed set ofleft to right state transitions are possible. A predetermined finalstate is defined from which transitions to other states cannot occur.Transitions are restricted to reentry of a state or entry to one of thenext two states. Such transitions are defined in the model as transitionprobabilities. Although the preferred embodiment restricts the flowgraphs to the present state or to the next two states, one skilled inthe art can build an HMM model without any transition restrictions,although the sum of all the probabilities of transitioning from anystate must still add up to one. In each state of the model, the currentfeature frame may be identified with one of a set of predefined outputsymbols or may be labeled probabilistically. In this case, the outputsymbol probability b(j) O(t) corresponds to the probability assigned bythe model that the feature frame symbol is O(t). The model arrangementis a matrix A=[a(i,j)] of transition probabilities and a technique ofcomputing B=b(j) O(t), the feature frame symbol probability in state j.The Markov model is formed for a reference pattern from a plurality ofsequences of training patterns and the output symbol probabilities aremultivariate Gaussian function probability densities. The patient habitinformation is processed by a feature extractor. During learning, theresulting feature vector series is processed by a parameter estimator,whose output is provided to the hidden Markov model. The hidden Markovmodel is used to derive a set of reference pattern templates, eachtemplate representative of an identified pattern in a vocabulary set ofreference treatment patterns. The Markov model reference templates arenext utilized to classify a sequence of observations into one of thereference patterns based on the probability of generating theobservations from each Markov model reference pattern template. Duringrecognition, the unknown pattern can then be identified as the referencepattern with the highest probability in the likelihood calculator. TheHMM template has a number of states, each having a discrete value.However, because treatment pattern features may have a dynamic patternin contrast to a single value. The addition of a neural network at thefront end of the HMM in an embodiment provides the capability ofrepresenting states with dynamic values. The input layer of the neuralnetwork comprises input neurons. The outputs of the input layer aredistributed to all neurons in the middle layer. Similarly, the outputsof the middle layer are distributed to all output states, which normallywould be the output layer of the neuron. However, each output hastransition probabilities to itself or to the next outputs, thus forminga modified HMM. Each state of the thus formed HMM is capable ofresponding to a particular dynamic signal, resulting in a more robustHMM. Alternatively, the neural network can be used alone withoutresorting to the transition probabilities of the HMM architecture.

The system allows patients to conduct a low-cost, comprehensive,real-time monitoring of their vital daily life activities. Informationcan be viewed using an Internet-based website, a personal computer, orsimply by viewing a display on the monitor. Data measured several timeseach day provide a relatively comprehensive data set compared to thatmeasured during medical appointments separated by several weeks or evenmonths. This allows both the patient and medical professional to observetrends in the data, such as a gradual increase or decrease in bloodpressure, which may indicate a medical condition. The invention alsominimizes effects of white coat syndrome since the monitor automaticallymakes measurements with basically no discomfort; measurements are madeat the patient's distributors, business and homes or work, rather thanin a medical office. To view information on daily life activities, thepatient or an authorized third party such as family members, emergencypersonnel, or medical professional accesses a patient user interfacehosted on the web server through the Internet from a remote computersystem. The patient interface displays vital information such asambulation, blood pressure and related data measured from a singlepatient. The system may also include a call center, typically staffedwith medical professionals such as doctors, nurses, or nursepractioners, whom access a care-provider interface hosted on the samewebsite on the server. The care-provider interface displays vital datafrom multiple patients.

In one embodiment, the web page hosted by the server includes a headerfield that lists general information about the patient (e.g. name, age,and ID number, general location, and information concerning recentmeasurements); a table that lists recently measured blood pressure dataand suggested (i.e. doctor-recommended) values of these data; and graphsthat plot the systolic and diastolic blood pressure data in atime-dependent manner. The header field additionally includes a seriesof tabs that each link to separate web pages that include, e.g., tablesand graphs corresponding to a different data measured by the wearabledevice such as calorie consumption/dissipation, ambulation pattern,sleeping pattern, heart rate, pulse oximetry, and temperature. The tablelists a series of data fields that show running average values of thepatient's daily, monthly, and yearly vital parameters. The levels arecompared to a series of corresponding ‘suggested’ values of vitalparameters that are extracted from a database associated with the website. The suggested values depend on, among other things, the patient'sage, sex, and weight. The table then calculates the difference betweenthe running average and suggested values to give the patient an idea ofhow their data compares to that of a healthy patient. The web softwareinterface may also include security measures such as authentication,authorization, encryption, credential presentation, and digitalsignature resolution. The interface may also be modified to conform toindustry-mandated, XML schema definitions, while being ‘backwardscompatible’ with any existing XML schema definitions.

The system provides for self-registration of Internet enabled appliancesby the user. Data can be synchronized between the Repository andappliance(s) via the base station 20. The user can preview the readingsreceived from the appliance(s) and reject erroneous readings. The useror treating professional can set up the system to generate alertsagainst received data, based on pre-defined parameters. The system candetermine trends in received data, based on user defined parameters.

In one embodiment, users may set up alerts or reminders that aretriggered when one or more reading meet a certain set of conditions,depending on parameters defined by the user. The user chooses thecondition that they would like to be alerted to and by providing theparameters (e.g. threshold value for the reading) for alert generation.Each alert may have an interval which may be either the number of datapoints or a time duration in units such as hours, days, weeks or months.The user chooses the destination where the alert may be sent. Thisdestination may include the user's portal, e-mail, pager, voice-mail orany combination of the above.

Trends are determined by applying mathematical and statistical rules(e.g. moving average and deviation) over a set of reading values. Eachrule is configurable by parameters that are either automaticallycalculated or are set by the user.

The user may give permission to others as needed to read or edit theirpersonal data or receive alerts. The user or clinician could have a listof people that they want to monitor and have it show on their “MyAccount” page, which serves as a local central monitoring station in oneembodiment. Each person may be assigned different access rights whichmay be more or less than the access rights that the patient has. Forexample, a doctor or clinician could be allowed to edit data for exampleto annotate it, while the patient would have read-only privileges forcertain pages. An authorized person could set the reminders and alertsparameters with limited access to others. A call center can call tocheck up on the patient if needed.

In one embodiment, a system for non-invasive monitoring of a patient whouses appliances on a daily basis, includes: one or more utility metersor gas sensors; a non-invasive daily activity monitor coupled to one ormore of the meter/sensor to identify turn on or turn off for eachindividual fixture or appliance; and a pattern recognizer coupled to thenon-invasive daily life activity monitor to infer daily life activityand to detect variance in the daily life activity and wherein thepattern recognizer sends a request to assist the patient when thevariance exceeds a predetermined threshold.

The pattern recognizer classifies patient daily life activitiesincluding wake-up habit, medicine compliance habit, ambulatory habit,sleep habit, bathroom habit, entertainment habit, telephone call habit,eating and drinking habit, work habit, or excise habit. A physical ormedical sensor can be worn by the patient, such as a heart rate sensoror an EKG sensor. A wireless communicator can connect the patient with aremote person including a family member, a doctor, a nurse, a medicalassistant, or a caregiver. The pattern recognizer analyzes daily lifeactivity pattern by analyzing telephone usage pattern, electric usagepattern, gas usage pattern, and gas usage pattern together with a hiddenmarkov model (HMM) or a neural network. The system can correlate dailylife activity pattern by analyzing electric usage pattern, gas usagepattern, and gas usage pattern together. One or more cameras positionedto capture a video of the patient; and a server coupled to the one ormore cameras, the server executing code to detect a dangerous conditionfor the patient based on the video and allow a remote third party toview images of the patient when a predetermined condition is detected.

In another aspect, a monitoring system for a person includes anon-invasive daily activity monitor coupled to a gas sensor to identifyusage of each individual appliance used by the person; a patternrecognizer coupled to the non-invasive daily life activity monitor toinfer daily life activity and to detect variance in the daily lifeactivity; and a cellular telephone having an accelerometer to detectmotion from the person, wherein the pattern recognizer or the cellulartelephone sends a request to assist the person if needed. Oneimplementation has the following:

1. Keep data of gas usage in a blockchain/API servers. Each blockcontains a cryptographic hash of the previous block,[6] a timestamp, andtransaction data (generally represented as a Merkle tree root hash). Bydesign, a blockchain is resistant to modification of the data. It is “anopen, distributed ledger that can record transactions between twoparties efficiently and in a verifiable and permanent way”. For use as adistributed ledger, a blockchain is typically managed by a peer-to-peernetwork collectively adhering to a protocol for inter-node communicationand validating new blocks. Once recorded, the data in any given blockcannot be altered retroactively without alteration of all subsequentblocks, which requires consensus of the network majority. Althoughblockchain records are not unalterable, blockchains may be consideredsecure by design and exemplify a distributed computing system with highByzantine fault tolerance. Decentralized consensus has therefore beenclaimed with a blockchain.

2. Report a leak to an email or text message to a phone. This featurecan detect the smallest amount of leakage, once one liter has movedthrough the flow meter, the valve would shut off the line. And at thattime the API server will send a notification to the owner's phone in away of a text message or an email.

3. Stop the gas flow until the leak is repaired. The customer will beable to take the device off of protection mode and with his phone walkaround his distributors, business and homes or business and manuallyturn the flow on and off through the API to find the leak.

4. Use for the elderly people to assure gas usage otherwise send anotification placed on a call center to notify next of kin that theirelderly parents have not used gas for the last 12 hours for example.

Besides the data storage on the blockchain, there is instant datatransactions over the API connections which can be adjusted to eachspecific need, for example a person might want a notification if at hisparent's house there hasn't been gas used for 5 hours, another personmight want a notification after 12 hours of no gas flow.

For the medical insurance industry this could assure notification beforean elderly person gets dehydrated and needs a more intensive medicalcare, for example, the gas monitor devices can be spread around thehouse on partial gas lines, to notify the care taker whether there wasgas flow in the shower line, or the kitchen gas line, or the gaspurifier system for their drinking. And this way the care taker will beable to determine different situations by monitoring the different gasusages on their phone.

FIG. 5 illustrates an example of a local area network 100. Local areanetwork 100 is merely exemplary and is not limited to the embodimentspresented herein. The local area network can be employed in manydifferent embodiments or examples not specifically depicted or describedherein. In some embodiments, the local area network 100 can include IOTgas sensor board 102, IOT gas sensor board 104, and IOT gas sensor board106. In some embodiments, any of IOT gas sensor boards 102, 104, 106 mayinclude an Internet of Things (IoT) device. As used herein, an IoTdevice is a device that includes sensing and/or control functionality aswell as a Wi-Fi™ transceiver radio or interface, a Bluetooth™transceiver radio or interface, a Zigbee™ transceiver radio orinterface, an Ultra-Wideband (UWB) transceiver radio or interface, aWi-Fi-Direct transceiver radio or interface, a Bluetooth™ Low Energy(BLE) transceiver radio or interface, an infrared (IR) transceiver,and/or any other wireless network transceiver radio or interface thatallows the IoT device to communicate with a wide area network and withone or more other devices. In some embodiments, an IoT device does notinclude a cellular network transceiver radio or interface, and thus maynot be configured to directly communicate with a cellular network. Insome embodiments, an IoT device may include a cellular transceiverradio, and may be configured to communicate with a cellular networkusing the cellular network transceiver radio.

A user can communicate with IOT gas sensor boards 102, 104, and 106using an access device 108. Access device 108 can include anyhuman-to-machine interface with network connection capability thatallows access to a network. For example, in some embodiments, accessdevice 108 can include a stand-alone interface (e.g., a cellulartelephone, a smartphone, a distributors, business and homes computer, alaptop computer, a tablet, a personal digital assistant (PDA), acomputing device, a wearable device such as a smart watch, a wall panel,a keypad, or the like), an interface that is built into an appliance orother device (e.g., a television, a refrigerator, a security system, agame console, a browser, or the like), a speech or gesture interface(e.g., a Kinect™ sensor, a Wiimote™ , or the like), an IoT deviceinterface (e.g., an Internet enabled device such as a wall switch, acontrol interface, or other suitable interface), or the like. In someembodiments, access device 108 can include a cellular or other broadbandnetwork transceiver radio or interface, and can be configured tocommunicate with a cellular or other broadband network using thecellular or broadband network transceiver radio. In some embodiments,access device 108 may not include a cellular network transceiver radioor interface. While only a single access device 108 is shown in FIG. 5,one of ordinary skill in the art will appreciate that multiple accessdevices may communicate with IOT gas sensor boards 102, 104, and 106.The user may interact with the IOT gas sensor boards 102, 104, and/or106 using an application, a web browser, a proprietary program, or anyother program executed and operated by access device 108. In someembodiments, access device 108 can communicate directly with IOT gassensor boards 102, 104, and/or 106 (e.g., through a communication signal116). For example, the access device 108 can communicate directly withIOT gas sensor board 102, 104, and/or 106 using Zigbee™ signals,Bluetooth™ signals, Wi-Fi™ signals, infrared (IR) signals, UWB signals,Wi-Fi-Direct signals, BLE (Bluetooth Low Energy) signals, soundfrequency signals, or the like. In some embodiments, access device 108can communicate with the IOT gas sensor boards 102, 104, and/or 106 viathe gateways 110, blockchain 112 (e.g., through a communication signal118) and/or via a cloud network 114 (e.g., through a communicationsignal 120). Call center personel can access the gateway 110 to renderassistance, such as confirming help prior to calling 911 if needed. Insome embodiments, local area network 100 can include a wireless network,a wired network, or a combination of a wired and wireless network. Awireless network may include any wireless interface or combination ofwireless interfaces (e.g., Zigbee™, Bluetooth™, Wi-Fi™, IR (infrared,UWB, Wi-Fi-Direct, BLE, cellular, Long-Term Evolution (LTE), WiMax™, orthe like). A wired network may include any wired interface (e.g., fiber,ethernet, powerline ethernet, ethernet over coaxial cable, digitalsignal line (DSL), or the like). The wired and/or wireless networks maybe implemented using various routers, access points, bridges, gateways,or the like, to connect devices in local area network 100. For example,local area network 100 can include gateway 110 and/or blockchain 112.Gateway 110 and/or blockchain 112 can provide communication capabilitiesto IOT gas sensor boards 102, 104, 106 and/or access device 108 viaradio signals in order to provide communication, location, and/or otherservices to the devices. In some embodiments, gateway 110 can bedirectly connected to external network 114 and can provide othergateways and devices in the local area network with access to externalnetwork 114. Gateway 110 can be designated as a primary gateway. Whilegateway 110 is shown in FIG. 1, one of ordinary skill in the art willappreciate that any number of gateways may be present within local areanetwork 100. The network access provided by gateway 110 and/orblockchain 112 can be of any type of network familiar to those skilledin the art that can support data communications using any of a varietyof commercially-available protocols. For example, gateways 110 canprovide wireless communication capabilities for local area network 100using particular communications protocols, such as Wi-Fi™ (e.g., IEEE802.11 family standards, or other wireless communication technologies,or any combination thereof). Using the communications protocol(s),gateways 110 can provide radio frequencies on which wireless enableddevices in local area network 100 can communicate. A gateway may also bereferred to as a base station, an access point, Node B, Evolved Node B(eNodeB), access point base station, a Femtocell, distributors, businessand homes base station, distributors, business and homes Node B,distributors, business and homes eNodeB, or the like. In someembodiments, gateways 110 can provide access device 108 and/or IOT gassensor boards 102, 104, 106 with access to one or more externalnetworks, such as cloud network 114, the Internet, and/or other widearea networks. In some embodiments, IOT gas sensor boards 102, 104, 106may connect directly to cloud network 114, for example, using broadbandnetwork access such as a cellular network. Cloud network 114 can includeone or more cloud infrastructure systems that provide cloud services. Acloud infrastructure system may be operated by a service provider. Incertain embodiments, services provided by cloud network 114 may includea host of services that are made available to users of the cloudinfrastructure system on demand, such as registration and access controlof IOT gas sensor boards 102, 104, 106. Services provided by the cloudinfrastructure system can dynamically scale to meet the needs of itsusers. Cloud network 114 can comprise one or more computers, servers,and/or systems.

A separate secure connection may be established by each IOT gas sensorboard 102, 104, 106 for communicating between each IOT gas sensor board102, 104, 106 and cloud network 114. A secure connection may also beestablished by access device 108 for exchanging communications withcloud network 114. In some examples, the secure connection may include asecure Transmission Control Protocol (TCP) connection. Gateway 110 canprovide NAT services for mapping ports and private IP addresses of IOTgas sensor boards 102, 104, 106 and access device 108 to one or morepublic IP addresses and/or ports. Gateway 110 can provide the public IPaddresses to cloud network 114. Cloud network 114 servers can directcommunications that are destined for IOT gas sensor boards 102, 104, 106and access device 108 to the public IP addresses. In some embodiments,each secure connection may be kept open for an indefinite period of timeso that cloud network 114 can initiate communications with eachrespective IOT gas sensor board 102, 104, 106 or access device 108 atany time. Various protocols may be used to establish a secure,indefinite connection between each of IOT gas sensor board 102, 104, and106, access device 108, and the cloud network 114.

FIG. 6 shows in more details one exemplary low power consumptionblockchain network used in the present systems. Designed with minimalelectrical demand in mind without sacrificing blockchain performance andwith enhanced security over traditional blockchains. The issue found wasthat the energy consumption of traditional blockchains continues to riseto exponential numbers. All while the world is collectively seeking toreduce overall demand on energy. By designing a blockchain with lowenergy consumption as a focus, the resultant blockchain technology isfar superior to existing systems which rely on massive banks of graphicsprocessors producing excessive heat and consuming many gigawatts ofenergy. Therefore, a new technology was required; Rather than thetraditional Proof of Work method, the system uses Proof of WorkCollaborative, wherein the miners share workloads across the network toreduce overall energy need by an order of magnitude. All while beingfaster and more secure than traditional blockchains.

In one aspect, the system is a fully functional blockchain which isoperated in collaboration with its component elements, rather thancompetitively as are previous blockchain technologies. By design, thisis a blockchain and crypto-mining system which is highly efficient anddue to that efficiency, reduces energy consumption of the blockchain orblockchains within the network or networks by considerable and notableamount. This lower energy requirement as a byproduct of allowing thenetwork to operate on low power electronics or within electronics as abackground function.

Multiple blockchains can share network workloads to further improveoverall efficiency and speed. The blockchain can be fully decentralizedacross its network or networks. The blockchain can be fully centralizedacross its network or networks. The blockchain to operate as private,closed networks. The blockchain can operate as open, publicly accessednetworks. The devices operating the network are low cost, low powerhardware such as a microcontroller for the gas sensors. The devicesoperating the network can be Internet of Things devices. The devicesoperating the network may be devices within appliances, sensors, drones,medical device, aerospace vehicles, or motor vehicles. The devicesoperating the network are part of another network sharing workloadacross multiple networks. The system can augment security system basedon SHA-256 and SECP256K1. The system can establish a securecommunication between two or more IoT type devices via blockchain.Wherein secure identification for each device is thoroughly checked witheach communication within the network. The devices of the network ornetworks are components of one or more of one or more devices comprisingin part or as a whole, from or contained within; dedicated devices,automobiles, locomotives, medical devices, household appliances,personal or non-personal digital devices, commercial or industrialdevices, and/or devices within aircraft or watercraft.

The blockchain described here uses Proof of Work Collaborative (POW-C)technology. Where traditional blockchains use Proof of Work (POW)technology already, the POW-C system reduces both the energy required toprocess a transaction as well as the size of the devices within thatblockchain that can operate the blockchain. This not only reduces theneeds of electricity consumption but also the space used by many of thedevices involved. This specifically benefits Internet of Things or 10T.And shows great promise in the IOT field. One implementation uses adevice called a NodeMCU. It is a small, Arduino compatible controllerchip designed for 10T.

One implementation operates as follows:

1. Wallet ledger: A copy of the ledger contained within the hardware orsoftware wallet. Hardware wallets will be based on (NodeMCU) With memorycard added.

2. Wallet: The result of the transactions related to the wallet address.Based on the (NodeMCU) and using an added memory card to store theledger within a simple case.

3. ECDSA: Elliptic curves digital signature.

4. Transaction: The data that a wallet sends to the network whichcarries outputs from previous transactions and inputs for currenttransactions, in order to spend coins owned by the wallet, the walletneeds to sign the transaction to prove owner ship to the coins it istrying to spend, which is pretty similar to how Bitcoin and Ethereum andLitecoin.

5. Specter: A security miner that oversees the network prior to the fullnodes distributing the workload to the Element Miners and Cell Miners.Also based on the (NodeMCU) hardware

6. Data Validation: Performed as part of the Specter's workload,verifying the data is in the correct format and without errors., it alsomakes sure the data is clean, no exploits or attacks. By performing thischeck, the system provides another layer of security for the users.

7. Broadcast Transaction: When the Specter is finished validating thedata of the transaction, the transaction is broadcast to multiple fullnodes.

8. Full Node: Receives the transaction from the Specter and validatesthe transaction's legitimacy and then passes the data to the mining poolfor the miners. Full Nodes are based on the Raspberry Pi or compatiblehardware and equipped with a screen to monitor traffic. The Full Nodesalso have a storage card to store the ledger.

9. Full Node Ledger: Each Full node keeps a copy of the blockchainledger on it's internal storage card. Storage cards are typically 32 gbMicro SD cards of class 10 speed.

10. Responses: When a transaction is received, the full node replieswith a response to the Specter miner which passes the response to thewallet, the response either includes ‘error’ message, or ‘ok’ messagewhich means the transaction was broadcast to the network successfully.

11. Pool: The mining pool, standard mining pool the same as mining poolsfor any other blockchain.

12. Miners: There are two types of miners. The first is the ‘ElementMiner’ based on the NodeMCU hardware for minimal energy consumption.These are fitted to a simple protective case. The second type is ‘mobileminers’ based on a Cell Phone application. The miners perform the tasksof confirming transactions and finding new blocks.

13. Blocks: A block contains transactions and data, which is recorded inthe ledger. This is the same as other blockchains.

14. Sync: The process of synchronizing the blockchain ledger across thenetwork and updating ledger records of the completed transaction(s).

The system blockchain starts with the test network, which is similar toBitcoin or Ethereum test network idea, where it is used to testimplementations, before those implementations are eligible to deploy tothe live network.

In the peer to peer network topology diagrams, a new type of miners iscalled Specter miner. The Specter miner is the security gateway foraccessing the peer to peer network, as mentioned in the white paper, thesystem peer to peer network implements a fragmented decentralizationmodel, which fragments the nodes into specific nodes, that carryspecific functionalities, which if compared to Bitcoin, everyone knowsthat Bitcoin wallet software is all in one implementation, which meansthe same wallet can act as a client, and as a full node, as explained onBitcoin.org

On the other side, the system implements fragmentation, which dividesthe wallet software to a standalone client, and a standalone full node.This method allows inserting the Specter miners in between differentnodes communicating on the network.

The client still downloads and synchronizes the complete ledger from thepeer to peer network, and the full node also downloads and synchronizesthe full ledger, but the client cannot operate as a full node, and thefull node cannot operate as a client.

Following that structure, the result is a sophisticated specificprotocol communication between all nodes on the network, and the Specterminers are the ones who verify the protocols and deploy the messages.

Following this topology, it appears that exploits arrive at a dead end,simply because the Specter miners do not carry an operating system, asin Linux or Windows or Mac, therefore no exploits have been implementedfor those nodes.

The Specter miners act as servers and clients, and are hosted by thepublic, who buy the miners to receive coins from new blocks, thereforethe Specter miners represent a decentralized network. The clients(simple wallets) communicate with the peer to peer network through theSpecter miners, which means every request passing on the network isbeing filtered by the Specter miners before being passed on to the fullnodes, this process includes digital signature generation from theSpecter miners to be approved by the full nodes eventually. Therefore incase someone tries to send direct exploits to the full nodes, hissockets will be missing the digital signature, or carry a rejectedsignature.

The full nodes are not vulnerable either, they carry their own securityenhancement, which filters data and prevents buffer overflows, fullnodes also work based on a protocol specific communications, where theydo not accept any socket without the proper protocol headers. Fragmenteddecentralization is a partial key for enhanced security levels, comparedto Bitcoin and other networks. The core of the peer to peer network isthe full nodes, just like in Bitcoin and Litecoin, because the fullnodes accept synchronize requests and help broadcasting transactions.Therefore, protecting the full nodes from being exploited is one featurethat the present blockchain implements. In consensus is a famous term,that people understand about full nodes in a blockchain industry whichmeans the full nodes carry the same ledger at least minus current block.

The system confirms whether a Full Node is in consensus with the rest ofthe network or not, because the miners query random Full Nodes atcertain situations, and the answers from the full nodes need to matcheach other in order to be considered in consensus. An example to explainthis topology is when a Full Node replies with UXTO for a wallet, thatis different from other Full Nodes replying for the same wallet, thesystem blockchain implements verification levels that calculate how manyFull Nodes voted yes, and how many voted no, and the result of accuracyand correctness needs to be above 93% in order for a transaction toconfirm. Therefore, the system does not fall under the 51% attack,because there is a new role for measuring decisions on the network.

Pseudo Codes and Detailed Explanation for Functions and Processes

-   -   Peer to Peer Client Wallet    -   On application start

If (‘wallet.dat’ file does not exist) { Show the sign up interface; }Else { Show the login interface; }

-   -   Both sign up interface and login interface include 6 input        fields for the SEED    -   Signup interface    -   Login interface    -   Sign up interface active:    -   Create a new wallet

If (word1 of SEED and word2 and word3 and word4 and word5 and word6 haveminimum length of 8 characters) { Check if the different words areunique among each other by calling the check duplicates function; }Function checkduplicates (array of strings) {

-   -   Create a new list of strings;    -   Create a Boolean and set its value to false;    -   Loop through the input array of strings;    -   Check if the list of strings contains the value in the array of        strings during loop

If (list contains value) { Turn Boolean to true; Break the loop; } Addthe value to the list; Return the Boolean; }

-   -   When receiving a result from the checkduplicates function, the        Boolean will indicate the uniqueness of each word in the SEED        entered by the user.

If (word1 and word2 and word3 and word4 and word5 and word6 is unique) {Hash each word separately to a SHA256 hash; } Function SHA256(string) {Take the input string into a variable; Generate SHA256 for the inputstring; Return the SHA256 result of the input string; }

-   -   As a result for the previous hashing operation, all 6 words of        the SEED have been hashed individually.    -   The next step:    -   Create a new string;    -   newString=SHA256(SHA256(word1)+SHA256(word4+SHA256(word3)+SHA256(word4)+SHA256(word5)+SHA256(word6));    -   This new string is the hash of concatenated double hashed words        of the SEED.    -   The next step is as follows:

For loop (for the number of characters in word6 of the SEED) { newString= SHA256(newString); }

-   -   The previous loop hashes the newString for a number of times of        how many characters are in the word6 of the SEED.    -   The newString was already a hash of concatenated double hashed        words of the SEED.    -   Then the code creates another string which the hash of the        hashed word6 is+word5+word4, this is the second half of the SEED        but reversed, and hashed.    -   secondString=SHA256(SHA256(word6)+SHA256(word5)+SHA256(word4;    -   The next step is to assign the time stamp to variables.    -   Date=current date in the system;    -   Time=current time in the system;    -   Note, the date and time are used in randomizing the coefficient        of the equation, and it does not matter how accurate or correct        they are.    -   The next step is to assign a balance of 0 coins    -   Balance=“0.00000000”;    -   After the previous steps the code makes a modification to the        secondString that was created earlier.    -   secondString=SHA256(secondString+SHA256(date)+SHA256(time)+randomstring(        ));

function randomstring( ) { create ASCII characters in a variable; createa char[100]; create a simple random number generator; loop through thelength of the char array { Append a random character; } Convert the chararray to a string; Return the string; }

-   -   The next step is to generate the private key, which is done        using a random number generator, that is a mix of rolling dice        and capturing random pixels off of the screen of the computer, a        very close mechanism as in bitaddress.org    -   After the private random key is generated, it goes through the        famous public key generation using elliptic curves, that is        published on Bitcoin documentation, and is also used by Litecoin        and plenty other coins.    -   From the public key, the 32 bit address is generated by        following the same steps as Bitcoin again.    -   At this point the code is ready to create the initial string,        which will be encrypted using AES encryption and saved in the        wallet.dat file    -   Initialstring=privatekey+newString+secondString;    -   Then the AES encryption function is initialized, and it relies        on the newString and the secondString to encrypt the data stored        in the file.

Function encrypt( ) { Check if the newString is empty and display anerror if true; Call the Rijndael managed function by sending the(newString); Receive the encrypted string from the function Use thestring to encode the initial string } Function Rijndael managed (string){ Receive the input string and use it as a salt; The password is thesecondString; The salt and the key are used to apply the AES encryption;}

-   -   The result of the above operations is an encrypted file content,        which is AES ecrypted based on the newString and the        secondString.    -   Therefore in order to decrypt the file, someone must have the        exact 6 SEED words, and in order to brute force the SEED there        are multiple steps to break, and that is not easy to accomplish.

At this point the wallet has prepared a new wallet.dat file content,which is encrypted and contains the private key.

Function restart( ) { Create wallet.dat file; Write the encryptedinitialString to the wallet.dat file; }

-   -   The next step is to call the login function.

Function login ( ) { Modify the interface layout; Hide contents; Showother contents; Call ledger function; } Function ledger ( ) { Check ifledger.dat file exists; If (ledger.dat exists) { Exit; } Else { Createledger.dat file; } }

-   -   Next step is to start a new thread, that works in the background        of the application.    -   The thread is dedicated to synchronize the ledger from the        blockchain, and update the wallet variables based on the        readings, and parsing of the blocks contents.    -   The thread run in a loop, which repeats itself with a delay.    -   The first step before starting the loop is to get the network        height.    -   In order to get the network height the wallet needs to identify        valid peers which it can connect to and ask information.    -   The peers on dynamic ip addresses, unless some peers have static        ip address, but in both cases the same process to discover peers        apply.    -   If it is the first time for the wallet to run, it means it does        not carry any history for peers ip addresses on the network,        therefore it will need to connect to the DNS tracker, to get a        list of peers, then it can query the peers for their known peers        and does not need to connect to the DNS tracker again.    -   If it is not the first time for the wallet to run, then it will        carry history of peers in its data storage, and it can use this        list to connect to any peer and retrieve new peers from it.    -   In case all peers in the list history are down, then the wallet        will query the DNS tracker for a fresh list and carry on from        there.

Function peers( ) { Check wallet storage for peers list; If (no listfound) { Connect to DNS tracker; Collect list;

-   -   Add list to storage;

} If (list found) { Loop through the list to find alive peers; If (alivepeers are found) { Request fresh peers list; Updat4e peers list instorage; Request network height; } Else { Connect to DNS tracker andrequest afresh peers list; } } }

-   -   Once the peers list is populated, and the network height is        retrieved, the wallet is ready to synchronize the ledger.

Function synchronize ( ) { Loop through peers list { Try to connect tolive peer; If connected { Send protocol specific message requestingledger synchronizing; Receive response from peers; Parse response;Extract network height; Parse the block list received from the peer;Insert the data into wallet storage; Parse the blocks content andheaders; Verify correctness of block headers to follow the chain rules;Update wallet balance and transactions history based on the data flow; }} }

-   -   The previous process runs over and over within the loop and does        not interfere with the wallet layout functionality because it is        on a secondary thread running in the background.    -   The delay factor changes based on the difference between the        network height and the wallet height, if the range is large the        delay factor decreases, while if the range is small the delay        factor increases relatively.    -   This feature keeps the network less busy, and saves resources,        since the synchronized wallets do not have to send as many        requests as the new wallets or unsynchronized wallets.    -   Therefore when a wallet reaches a good amount of synchronizing        which makes it considered an up to date wallet, and that would        happen if network height−wallet height<2 or 3    -   At this level the wallet will slow down on querying the network        and investigating new peers, which allows more resources for        other wallets where for example network height−wallet        height>50,000    -   If the network height−wallet height is a large difference then        the wallet will keep the delay factor small in order to catch up        on the blocks it is missing.    -   Therefore the relationship between the delay factor and the        difference between the network height and wallet height is        inversely proportional. Yet the delay factor does not increment        or decrement gradually, on the contrary, it increments suddenly,        or decrements suddenly based on the if condition that is        investigated every time the loop completes a cycle.    -   The relation ship between the delay factor and the level of        synchronization of the wallet, has a direct effect on the        traffic over the peer to peer network.    -   In the following diagram the wallets with slower queries and        slower traffic show saving resources on the network, to allow        other wallets to query fast synchronization until they reach the        same level of saturation as the slowed down wallets.    -   Login interface active:    -   Login the existing wallet.dat file    -   In case on application startup a wallet.dat file exists, the        application will initiate the login interface and will request        the correct 6 SEED words to access the current wallet.dat file.    -   Once the user inserts the 6 words of SEED and click the login        button, the application will use the SEED words to perform the        hashing steps and then calls the decrypt function

Check duplicate; Hash SEED words separately using SHA256( ); Generatethe newString; Generate the secondString; Function decrypt ( ) { Usingthe newString and the secondString decrypt the contents of thewallet.dat file; If the salt and cypher generate correctly and asuccessful decryption takes place:  Authorize and initiate the accessfunction; If the encryption fails:  Reject, and prompt user that theSEED is incorrect; }

-   -   If a successful login is in place, the wallet extracts the        private key into a string, then it uses the private key to        generate the public key and wallet address.    -   The application disposes the strings for the private key and        public key, and only keeps the wallet address that is 32        characters long.    -   This way the privatekey is only carried in the device memory for        an instance to derive the public key    -   Then the public key stays for another instance, to derive the        wallet address, and both key are removed instantly from the        device RAM.    -   During synchonization the wallet only need the wallet address.    -   Such a technique allows the wallet to keep the private key        encrypted even while running.    -   The same conditions apply to the SEED words and any critical        information where the wallet can replace the SEED words with the        newString and secondString, which are SHA256 variables.    -   Then once the wallet address is retreived the wallet can empty        all the strings and variables isntantly and keep their value        empty in the device RAM    -   When sending a transaction the wallet needs to identify the        private key to sign the transaction by using ecdsa signature, at        this point the wallet needs to decrypt the wallet.dat file again        to access the private key.    -   There are two different implementations that have been adopted        in the Alloy Green wallets, one of them is to keep the first        three words of the hashed SEED in the device memory, and dispose        the other half of the SEED, after login, and when a transaction        is required the user has to input 3 words of the SEED.    -   Another implementation in a different version of the wallet        keeps an encrypted form of some words from the SEED in the        memory after login, and prompts the user for less words when        attempting a transaction.    -   Yet in both cases the wallet eliminates storing variables in the        device memory, that allow retreiving the decryption parameters,        which are hashes of the words of the SEED in certain orders and        certain combinations as explained earlier.    -   Updating wallet balance    -   Synchronizing the open ledger allows the wallet to parse the        block contents and retrieve the transactions related to the        wallet.    -   Any new block downloaded must have a matching previous blockhash        to the previous block hash.    -   The wallet extracts the transactions and shows notification on        the operating system alerting the user of incoming transaction.    -   The adopted mechanism is very similar to the one in Bitcoin,        Litecoin, and other coins, which seems to be the most suitable        adoption to the subject.    -   On exitting the wallet, the wallet attempts to clear any        variables it had in the device memory and were necessary while        the wallet running.

The system implements enhanced features to filter every sockettransferred on the network, this filtering of data enhances the networksecurity overall. Wallets are also secured within, every wallet (client)acts as a standalone banking system, the wallet.dat file is where theWIF is stored, yet it is encrypted, and the whole wallet.dat file isalways encrypted, the encryption is based on AES Rijndael, and the SEEDis involved within the encryption, the user decides upon the SEED, whichmeans that even if the user lost his laptop or left it unlocked atschool or work, or a public place, and someone tried to steal hiswallet.dat file, the hacker is still up against decrypting AES which isnot a simple or easy task to perform, especially that the SEED contains6 words, and each word has to be unique from the other 7 words, andleast 8 characters, then sha256 is applied to the SEED words, anddifferent combinations and divisions of the sha256 happen before thecalculations of the AES encryption take place.

-   -   SHA256 is a one-way hash function, therefore guessing the SEED        and breaking the AES is not an easy task to achieve. Elliptic        curve SECP256K1 is another strong cryptography area implemented        in the The system blockchain, which is just like other        cryptocurrencies, Bitcoin, Ethereum, Litecoin . . . etc. ECDSA        is another implementation which is famous in the industry and is        used by The system blockchain to sign transactions.    -   Fragmentation makes it more difficult for hackers to run        exploits, because there are more nodes on the peer to peer        network, and the nodes carry different functions from other        nodes, when this is compared to Bitcoin network, and how it is        all in one software, you can notice the difference between the        security level of each network.    -   Proof of work collaborative, allows all miners participating in        the network to solve the equations together, confirm        transactions together, and find new blocks together, without        having to compete, therefore each participant can carry any        small piece of the equation without having to worry about        competing with another participant, and in return the        participant gets rewarded based on the amount of work calculated        by his miner(s).    -   Proof of work collaborative aims towards more decentralization,        and more fragmentation, when compared to usual proof of work,        where a Bitcoin single mining farm can control almost 50% of the        network, by producing and selling ASIC miners, this takes the        network towards centralization instead of decentralization,        while in The system blockchain the new concept of proof of work        collaborative prevents that incident, because all miners combine        their work and calculations, and there is no competition among        them, therefore wasted work and wasted calculations has        decreased by a very large amount compared to the usual proof of        work model.    -   The more miners the faster the network, is because the Specter        miners are the gateways between the clients and the Full Nodes,        and the more Specter miners exist on the network, the more        ability of digesting more transactions per second.    -   On the same page, the element miners and cellphone miners, play        a good role in speeding the network by confirming transactions        faster and hashing faster.    -   The full nodes also play a good role, where more full nodes mean        more resources on the network and faster transactions. Therefore        the network scales by adding more miners, and full nodes, which        is a usual case for any peer to peer network. In one embodiment,        the network will start at 1,000 transaction per second, and        scale up to 10,000 transactions per second. At that level, when        a block target is 30 seconds, it means the network can digest        300,000 transactions per block, compared to Bitcoin, a block        takes about 10 minutes and holds and average of 2,000        transactions per block.    -   Scaling is also involved in different sides of the DAPPS, and        the network is built to scale gradually based on expanding the        nodes and the miners. DAPPS are not all concerned about speed,        some DAPPS are concerned about storage size more than speed,        others are concerned about speed and not the storage, and some        are concerned about both.    -   The blocks in the system blockchain do not just carry        transactions, but also carry data, the data is from various        industries using the blockchain as a proof of operation. The        data logged by the equipment is verified by the Specter miners        to underlie specific DAPPs categories. Data transferred by        industrial equipment carry digital signature based on ECDSA to        confirm identity and therefore confirm sincerity of the data        logged into the blocks and the open ledger. The system is not        just a coin blockchain, but a blockchain that implements DAPPS        and supports industrial equipment to log data history in the        open ledger, where such data is signed to verify the industrial        equipment and differentiate machinery by ID.    -   The above embodiments may be implemented in hardware, in a        computer program executed by a processor, in firmware, or in a        combination of the above. A computer program may be embodied on        a computer readable medium, such as a storage medium. For        example, a computer program may reside in random access memory        (“RAM”), flash memory, read-only memory (“ROM”), erasable        programmable read-only memory (“EPROM”), electrically erasable        programmable read-only memory (“EEPROM”), registers, hard disk,        a removable disk, a compact disk read-only memory (“CD-ROM”), or        any other form of storage medium known in the art.    -   One embodiment can be a cryptographic wireless Key for        Automobile. When using a wireless remote to control the keyless        entry and the ignition start for a car or truck, any hacker can        sniff packets from the air, that were sent by the wireless key        and copy the valid commands and repeat them to mess with the        automobile. The communication between the sender and the        recipient unit is protected by a new level of cryptography which        involves symmetric and asymmetric encryptions, it also involves        enhanced algorithms that prevent intruders and hackers from        being able to duplicate a radio signal that was sent from the        legitimate automobile wireless key and try to send it as it was        (duplicate) in an attempt to mess with the automobile recipient        unit. The term cryptographic means applying a digital signature        based on ECDSA for example or an RSA. Taking an example of the        ECDSA based on elliptic curves digital signature and Diffie        Hellman key exchange, the commands sent from the automobile        wireless key to the recipient unit will carry a digital        signature, in addition to this, a new level of enhancement is        being applied to prevent a hacker from copying a command        including a correct digital signature and trying to repeat it        and mess with the recipient unit, this new level is based on an        algorithm which does not allow using the same random key for a        digital signature twice, therefore the parameters for the        digital signature (r,s) will always be different for the digital        signature because the sender (automobile wireless key) and the        receiver (automobile receiving unit) will keep track of        which (r) has been used before and will not permit re-using the        same (r). If the automobile wireless key will send a command        every second, it means it will send 31,536,000 commands per        year, and it uses the secp192r1 curve which is one of the        smallest elliptic curves it means there is        199045590290039344363133860451790538308674386239980 years left        to run a command with a new signature every second.    -   Similarly, the blockchain can be used to control a wireless        thermostat or a Wi-Fi thermostat to control an air conditioner        unit or a heat pump or a boiler, the blockchain is used to        prevent any hacker from sniffing packets from the air, that were        sent by a wireless thermostat or a Wi-Fi thermostat and copy the        valid commands and repeat them to mess with the recipient unit.    -   An exemplary storage medium may be coupled to the processor such        that the processor may read information from, and write        information to, the storage medium. In the alternative, the        storage medium may be integral to the processor. The processor        and the storage medium may reside in an application specific        integrated circuit (“ASIC”). In the alternative, the processor        and the storage medium may reside as discrete components. A        memory and a processor may be discrete components of a network        entity that are used to execute an application or set of        operations as described herein. The application may be coded in        software in a computer language understood by the processor, and        stored in a computer readable medium, such as, a memory. The        computer readable medium may be a non-transitory computer        readable medium that includes tangible hardware components, such        as memory, that can store software. Furthermore, a software        module may be another discrete entity that is part of the        network entity, and which contains software instructions that        may be executed by the processor to effectuate one or more of        the functions described herein. In addition to the above noted        components of the network entity, the network entity may also        have a transmitter and receiver pair configured to receive and        transmit communication signals (not shown). In some embodiments,        a cloud computing system may be provided for communicating with        one or more sensing devices. The cloud computing system can        analyze pressure data provided from a sensing device, and can        determine or verify occurrences of leaks and can characterize        the leaks.    -   Although an exemplary embodiment of at least one of a system,        method, and non-transitory computer readable medium has been        illustrated in the accompanied drawings and described in the        foregoing detailed description, it will be understood that the        application is not limited to the embodiments disclosed, but is        capable of numerous rearrangements, modifications, and        substitutions as set forth and defined by the following claims.        For example, the capabilities of the system of the various        figures can be performed by one or more of the modules or        components described herein or in a distributed architecture and        may include a transmitter, receiver or pair of both. For        example, all or part of the functionality performed by the        individual modules, may be performed by one or more of these        modules. Further, the functionality described herein may be        performed at various times and in relation to various events,        internal or external to the modules or components. Also, the        information sent between various modules can be sent between the        modules via at least one of: a data network, the Internet, a        voice network, an Internet Protocol network, a wireless device,        a wired device and/or via plurality of protocols. Also, the        messages sent or received by any of the modules may be sent or        received directly and/or via one or more of the other modules.    -   One skilled in the art will appreciate that a “system” could be        embodied as a personal computer, a server, a console, a personal        digital assistant (PDA), a cell phone, a tablet computing        device, a smartphone or any other suitable computing device, or        combination of devices. Presenting the above-described functions        as being performed by a “system” is not intended to limit the        scope of the present application in any way, but is intended to        provide one example of many embodiments. Indeed, methods,        systems and apparatuses disclosed herein may be implemented in        localized and distributed forms consistent with computing        technology.    -   It should be noted that some of the system features described in        this specification have been presented as modules, in order to        more particularly emphasize their implementation independence.        For example, a module may be implemented as a hardware circuit        comprising custom very large scale integration (VLSI) circuits        or gate arrays, off-the-shelf semiconductors such as logic        chips, transistors, or other discrete components. A module may        also be implemented in programmable hardware devices such as        field programmable gate arrays, programmable array logic,        programmable logic devices, graphics processing units, or the        like.

A module may also be at least partially implemented in software forexecution by various types of processors. An identified unit ofexecutable code may, for instance, comprise one or more physical orlogical blocks of computer instructions that may, for instance, beorganized as an object, procedure, or function. Nevertheless, theexecutables of an identified module need not be physically locatedtogether, but may comprise disparate instructions stored in differentlocations which, when joined logically together, comprise the module andachieve the stated purpose for the module. Further, modules may bestored on a computer-readable medium, which may be, for instance, a harddisk drive, flash device, random access memory (RAM), tape, or any othersuch medium used to store data.

Indeed, a module of executable code could be a single instruction, ormany instructions, and may even be distributed over several differentcode segments, among different programs, and across several memorydevices. Similarly, operational data may be identified and illustratedherein within modules, and may be embodied in any suitable form andorganized within any suitable type of data structure. The operationaldata may be collected as a single data set, or may be distributed overdifferent locations including over different storage devices, and mayexist, at least partially, merely as electronic signals on a system ornetwork.

It will be readily understood that the components of the application, asgenerally described and illustrated in the figures herein, may bearranged and designed in a wide variety of different configurations.Thus, the detailed description of the embodiments is not intended tolimit the scope of the application as claimed, but is merelyrepresentative of selected embodiments of the application.

One having ordinary skill in the art will readily understand that theabove may be practiced with steps in a different order, and/or withhardware elements in configurations that are different than those whichare disclosed. Therefore, although the application has been describedbased upon these preferred embodiments, it would be apparent to those ofskill in the art that certain modifications, variations, and alternativeconstructions would be apparent.

While preferred embodiments of the present application have beendescribed, it is to be understood that the embodiments described areillustrative only and the scope of the application is to be definedsolely by the appended claims when considered with a full range ofequivalents and modifications (e.g., protocols, hardware devices,software platforms etc.) thereto.

What is claimed is:
 1. A system to characterize gas in a building,comprising: a processor; a gas sensor coupled to the processor; a gasvalve coupled to the processor; and an encryption module executed by theprocessor to secure gas data; and a transceiver to communicate securedgas data over a network to a remote processor.
 2. The system of claim 1,comprising a blockchain coupled to the processor through thetransceiver.
 3. The system of claim 2, wherein sensor data is stored inthe blockchain to avoid tampering.
 4. The system of claim 1, whereindata transactions sent by the processor are signed with elliptic curvesignature.
 5. The system of claim 1, comprising an application programinterface (API) to allow a mobile device to query the processor for gasdata.
 6. The system of claim 5, wherein the processor receives commandsfrom a phone app to the devices and communicate readings from thedevices to the phone app using the API.
 7. The system of claim 5,wherein the processor uses the API to communicate an email or a textnotification based on a predetermined event.
 8. The system of claim 5,wherein the processor uses the API to communicate an email or a textnotification based on gas leakage detection.
 9. The system of claim 5,comprising an API gateway, wherein communications between networkdevices and the blockchain enhanced security features that protect theconnections and the privacy of the users.
 10. The system of claim 1,comprising code to automatically turn off the gas valve in case of aleak.
 11. The system of claim 1, comprising code to open gas flow on aselected pipe on a scheduled time.
 12. The system of claim 1, comprisinga learning machine to disaggregate gas usage at an appliance or fixturelevel.
 13. The system of claim 1, comprising a call center incommunication with the processor and code to monitor activities of lifefrom gas sensor data and request assistance.
 14. The system of claim 1,wherein the encryption does not allow using the same random key for adigital signature twice and wherein encryption parameters for a digitalsignature (r,s) are different for the digital signature because a senderand a receiver track and reject re-using the same (r).
 15. A method tomanage gas in a building, comprising: reading from one or more sensorsgas flow into the building; storing sensor data on a blockchain;determining if the gas flow is from a leakage above a predeterminedthreshold and shutting off gas into the building.
 16. The method ofclaim 15, comprising notifying a user of the gas leakage prior toshutting off gas into the building.
 17. The method of claim 15,comprising communicating with a mobile device through an encryptedapplication program interface (API).
 18. The method of claim 15,comprising securing communications with an elliptic curve signature. 19.The method of claim 15, comprising when idled, mining for acryptocurrency.
 20. The method of claim 15, comprising monitoringactivities of life from sensor data and calling for assistance ifneeded.